import java.util.Map;
import java.util.TreeMap;

public class NM {
    //TreeMap的使用；
    public static void main(String[] args){
        //put方法为进行设置k对应的value值；
        Map<String,String> m=new TreeMap<>();
        m.put("鲁智深","花和尚");
        m.put("林冲","豹子头");
        m.put("武松","行者");
        m.put("宋江","及时雨");
        String str=m.put("李逵","黑旋风");
        System.out.println(m.size());//进行打印k的个数；
        System.out.println(m);//进行打印容器中的k-value键值对；
        str=m.put("无名",null);//value的值不存在也不会影响k的个数增加；
        System.out.println(m.size());
        str=m.put("李逵","铁牛");
        System.out.println(m.size());
        System.out.println(m.get("李逵"));//进行获取k值对应的value值；
        System.out.println(m.getOrDefault("史进","九纹龙"));
        //默认情况下进行的返回；在真实容器中不存在这个键值对；
        System.out.println(m.size());
        System.out.println(m.containsKey("宋江"));//进行判断容器中是否存在某个key值；
        System.out.println(m.containsValue("铁牛"));//进行判断容器中是否存在某个value值；
        for(String s:m.keySet()){
            System.out.print(s+" ");
        }
        System.out.println();//keyset方法是防止key在Set中进行返回的；
        for(String s1:m.values()){
            System.out.print(s1+" ");
        }
        System.out.println();//value方法是将map中value放在一个collect集合中进行返回的；
        for(Map.Entry<String,String> entry:m.entrySet()){
            System.out.println(entry.getKey()+"--->"+entry.getValue());
        }
        System.out.println();




    }

}
